package com.otod.sys.role.service;

import java.util.List;
import java.util.Map;

import com.otod.base.exception.AppException;
import com.otod.commons.entity.Page;
import com.otod.sys.vo.AuapRRoleMenuVo;
import com.otod.sys.vo.AuapTRoleVo;

/**
 * 角色管理
 * @author jqiu
 */
public interface IRoleService{
	
	/**
	 * 获取角色VO
	 * @param vo
	 */
	public AuapTRoleVo getById(String id);
	

	/**
	 * 分页查询员工信息列表
	 * @param page	分页信息
	 * @param param	参数
	 * @return	分页信息和结果数据
	 */
	public Page queryForList(Page page,Map<String,Object> param);
	
	/**
	 * 查询员工信息列表
	 * @param param	参数
	 * @return	分页信息和结果数据
	 */
	public List<AuapTRoleVo> queryForList(Map<String,Object> param);
	
	/**
	 * 更新角色
	 * @param map
	 */
	public void updateRole(Map map);
	
	/**
	 * 新增角色
	 * @param vo
	 */
	public void addRole(AuapTRoleVo vo);
	
	/**
	 * 删除角色
	 * @param id
	 * @throws AppException 
	 */
	public void delRole(String id) throws AppException;
	
	/**
	 * 查询全部角色
	 * @param id
	 */
	public List<AuapTRoleVo> findAll();
	
	/**
	 * 查询全部角色对应的菜单
	 * @param id
	 */
	public List<AuapRRoleMenuVo> findAllMenu(String roleId);
	
	/**
	 * 保存角色对应的菜单Id
	 * @param roleid,menuIds
	 */
	public void saveRoleMenuId(String roleId,String menuIds);
	
	/**
	 * 删除原来拥有的菜单
	 * @param roleid
	 */
	public void delRoleMenuId(String roleId);
}
